]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Use St.Button for preview close buttons
authorFlorian Müllner <fmuellner@src.gnome.org>
Thu, 18 Feb 2010 04:15:10 +0000 (05:15 +0100)
committerFlorian Müllner <fmuellner@src.gnome.org>
Thu, 18 Feb 2010 18:25:28 +0000 (19:25 +0100)
Originally, we used St.Bin for the preview close buttons - using
St.Button instead adds support for pseudo classes to style different
button states.

js/ui/workspace.js

index c91ea12a4390bc65f9a29c4fb4fdfc3aa14f766c..3af8c71c93db0564a90fbbdb8f0d41236555a477 100644 (file)
@@ -371,22 +371,20 @@ WindowOverlay.prototype = {
                 this.title.text = w.title;
             }));
 
-        let button = new St.Bin({ style_class: "window-close",
-                                  reactive: true });
+        let button = new St.Button({ style_class: "window-close" });
         button.connect('style-changed',
                        Lang.bind(this, this._onStyleChanged));
         button._overlap = 0;
 
+        this._idleToggleCloseId = 0;
+        button.connect('clicked', Lang.bind(this, this._closeWindow));
+
         windowClone.actor.connect('destroy', Lang.bind(this, this._onDestroy));
         windowClone.actor.connect('enter-event',
                                   Lang.bind(this, this._onEnter));
         windowClone.actor.connect('leave-event',
                                   Lang.bind(this, this._onLeave));
 
-        this._idleToggleCloseId = 0;
-        button.connect('button-release-event',
-                       Lang.bind(this, this._closeWindow));
-
         this._windowAddedId = 0;
         windowClone.connect('zoom-start', Lang.bind(this, this.hide));
         windowClone.connect('zoom-end', Lang.bind(this, this.show));
@@ -461,7 +459,7 @@ WindowOverlay.prototype = {
         title.set_position(Math.floor(titleX), Math.floor(titleY));
     },
 
-    _closeWindow: function(actor, event) {
+    _closeWindow: function(actor) {
         let metaWindow = this._windowClone.metaWindow;
         this._workspace = metaWindow.get_workspace();
 
@@ -469,7 +467,7 @@ WindowOverlay.prototype = {
                                                       Lang.bind(this,
                                                                 this._onWindowAdded));
 
-        metaWindow.delete(event.get_time());
+        metaWindow.delete(global.get_current_time());
     },
 
     _onWindowAdded: function(workspace, win) {